博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP左侧菜单栏的管理与实现
阅读量:5937 次
发布时间:2019-06-19

本文共 2615 字,大约阅读时间需要 8 分钟。

以thinkPHP5.0为例后台config.php文件里配置
//配置文件设置菜单内容属性'menu' => [  [    'name' => '菜单栏1',    'url' => '/admin/index/one',    'status'=> 0,    'sub'=> 0  ],  [    'name' => '菜单栏2',    'url' => '#',    'status'=> 0,    'sub'=>[        [          'name' => '子菜单栏1',          'url' => '/admin/user/one',          'status'=> 0,        ],        [          'name' => '子菜单栏2',          'url' => '/admin/user/two'),          'status'=> 0,        ],    ]  ],  [    'name'=> '菜单栏3',    'url' => '#',    'status'=> 0,    'sub'=>[        [          'name' => '子菜单栏1',          'url' => '/admin/admin/one',          'status'=> 0,        ],        [          'name' => '子菜单栏2',          'url' =>url('/admin/admin/two'),          'status' => 0,        ],    ]  ],  [    'name' => '菜单栏4',    'url' => '/admin/order/one',    'status'=> 0,    'sub'=> 0  ]]
 

  

在项目后台初始化方法里base
class Base extends Controller{    protected function _initialize()    {        $request = Request::instance();        if (session('uid') === null) {            $this->redirect('Simple/login');        }        $menu = Config::get('menu'); //获取配置文件里的菜单数据        $clickUrl = $request->path(); //获取当前请求的地址        $clickUrl = '/' . $clickUrl;        $menuData = setMenu($menu, $clickUrl); //对每个配置项进行状态设置        $this->assign('menu', $menuData);    }}
 

  

后台common.php文件
function setMenu($menuData,$url){    if (!is_array($menuData)){        return false;    }    foreach ($menuData as $key => $value) {        if($value['url'] == '#'){            foreach ($value['sub'] as $k => $v) {                if($v['url'] == $url){                    $menuData[$key]['status'] = 1;     //改变当前访问的子菜单栏状态                    $menuData[$key]['sub'][$k]['status'] = 1;  //改变当前当前的菜单栏状态                }            }        } else {            $menuData[$key]['status'] = 1;        }    }    return $menuData;}
 

  

布局页面上view判断菜单栏及子菜单栏的status状态

  

 

转载于:https://www.cnblogs.com/qhorse/p/10038190.html

你可能感兴趣的文章
Web应用工作原理、动态网页技术
查看>>
EXCEL工作表保护密码破解 宏撤销保护图文教程
查看>>
Catalan数(卡特兰数)
查看>>
Linux shell的条件判断、循环语句及实例
查看>>
JPA常用注解
查看>>
简单的设置
查看>>
常用命令1
查看>>
Windows Server 2012 DHCP故障转移
查看>>
Linux服务器配置和管理:虚拟机安装CentOS6.7
查看>>
掌握ajax
查看>>
ASA下邮件发送经常失败
查看>>
python3第八天(面向对象)
查看>>
pomelo的session
查看>>
我的友情链接
查看>>
ubuntu atp&dpkg
查看>>
主要 次要通道
查看>>
利用贝叶斯分类器进行文本挖掘---笔记
查看>>
我的友情链接
查看>>
将ping命令结果输出到文本
查看>>
小蚂蚁学习mysql性能优化(8)--数据库结构优化--范式化和反范式化,水平分表,垂直分表...
查看>>